package me.zhengjie.dao;

import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Date;

/**
 * 
 * @TableName iws_store_outside
 */
@TableName(value ="iws_store_outside")
@Data
@Accessors(chain = true)
public class StoreOutsideDao implements Serializable {

    @ApiModelProperty(value = "储位编码")
    @TableField("id")
    private String id;

    @ApiModelProperty(value = "储位名称")
    @TableField("store_name")
    private String storeName;


    @ApiModelProperty(value = "仓库号")
    @TableField("floor")
    private String floor;

    @ApiModelProperty(value = "区域号")
    @TableField("region")
    private String region;

    @ApiModelProperty(value = "层数号")
    @TableField("frame")
    private String frame;

    @ApiModelProperty(value = "储位号")
    @TableField("serial")
    private String serial;

    @ApiModelProperty(value = "类型（原料/辅料）")
    @TableField("ware_type")
    private String wareType;

    @ApiModelProperty(value = "储位类型（料箱储位/托盘储位）")
    @TableField("store_type")
    private String storeType;

    @ApiModelProperty(value = "货位类型（普通货架/线边储位/抽检区）")
    @TableField("good_type")
    private String goodType;

    @ApiModelProperty(value = "储位状态（空闲0, 入库1, 出库2, 有货3）")
    @TableField("status")
    private Integer status;

    @ApiModelProperty(value = "是否锁定（1锁定/0启用）")
    @TableField("is_lock")
    private Integer isLock;



    @ApiModelProperty(value = "载具码")
    @TableField("container_code")
    private String containerCode;

    @ApiModelProperty(value = "创建时间")
    @TableField("create_date")
    private Timestamp createDate;

    @ApiModelProperty(value = "更新时间")
    @TableField("update_date")
    private Timestamp updateDate;

    @ApiModelProperty(value = "储位重量")
    @TableField("weight")
    private Double weight;

    @ApiModelProperty(value = "储位长")
    @TableField("s_long")
    private Double sLong;

    @ApiModelProperty(value = "储位宽")
    @TableField("s_wide")
    private Double sWide;

    @ApiModelProperty(value = "储位高")
    @TableField("s_tall")
    private Double sTall;


    public void copy(StoreOutsideDao source) {
        BeanUtil.copyProperties(source, this, CopyOptions.create().setIgnoreNullValue(true));
    }


}